package cn.virens.server.aio.channel;

import java.io.Closeable;
import java.net.SocketAddress;

import cn.virens.server.aio.listener.AioDataDecoder;
import cn.virens.server.aio.listener.AioDataEncoder;
import cn.virens.server.aio.listener.AioDataErrorListener;
import cn.virens.server.aio.listener.AioDataReadListener;
import cn.virens.server.aio.listener.AioDataWriteListener;

public interface AioChannel extends Closeable {

	String getUid();

	boolean isOpen();

	boolean isRemove();

	SocketAddress getAddress();

	AioDataDecoder getAioDecoder();

	AioDataEncoder getAioEncoder();

	AioDataReadListener getAioDataReadListener();

	AioDataWriteListener getAioDataWriteListener();

	AioDataErrorListener getAioDataErrorListener();

}
